Scroll to navigation

FUTIMES(3) Linux Programmer's Manual FUTIMES(3)

名前

futimes, lutimes - ファイルのタイムスタンプを変更する

書式

#include <sys/time.h>
int futimes(int fd, const struct timeval tv[2]);
int lutimes(const char *filename, const struct timeval tv[2]);


glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

futimes(), lutimes(): _BSD_SOURCE

説明

futimes() は utimes(2) と同じ方法でファイルのアクセス時刻と修正時刻を変更する。 違いは、タイムスタンプを変更するファイルを、 パス名ではなく、ファイルディスクリプタ fd を用いて指定する点である。

lutimes() は utimes(2) と同じ方法でファイルのアクセス時刻と修正時刻を変更する。 違いは、 filename がシンボリック・リンクを参照している場合に、リンクの展開を行わず、 代わりにシンボリック・リンクのタイムスタンプを変更する。

返り値

成功すると 0 を返す。エラーの場合 -1 を返し、 errno を適切に設定する。

エラー

エラーは utimes(2) と同じだが、 futimes() では以下のエラーが追加になっている:

fd が有効なファイルディスクリプタでない。
/proc ファイルシステムにアクセスできなかった。

バージョン

futimes() は glibc 2.3 以降で利用可能である。 lutimes() は glibc 2.6 以降で利用可能であり、 utimensat(2) システムコールを使って実装されている。 utimensat(2) はカーネル 2.6.22 以降でサポートされている。

準拠

これらの関数はどの標準でも規定されていない。 Linux 以外では、これらは BSD でのみ利用可能である。

関連項目

utimensat(2), utime(2), symlink(7)

2008-04-07 Linux